package acwing._2LanQiao._6DoublePointer_BFS_Graph;
/**
 * @Project : ProgrammingExercises
 * @Package : ACWing._2LanQiao._6DoublePointer_BFS_Graph
 * @File : Q1224.java
 * @Author : WangRuoyu
 * @Date : 2023/3/19 10:33
 */

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


// 图论做法，求环图的个数
public class Q1224 {
    static boolean[] st;

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] words = br.readLine().split(" ");

        int n = Integer.parseInt(words[0]);

        int[] d = new int[n + 1];
        st = new boolean[n + 1];

        words = br.readLine().split(" ");
        for (int i = 1; i <= n; ++i) {
            d[i] = Integer.parseInt(words[i - 1]);
        }

        int k = 0;

        for (int i = 1; i <= n; ++i) {
            if (!st[i]) {
                k++;
                while (!st[i]) {
                    st[i] = true;
                    i = d[i];
                }
            }
        }

        System.out.println(n - k);
    }
}

//public class Q1224 {
//    static boolean[] st;
//
//    static boolean check() {
//        for (int i = 1; i < st.length; ++i) {
//            if (!st[i]) return false;
//        }
//        return true;
//    }
//
//    public static void main(String[] args) throws IOException {
//        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//        String[] words = br.readLine().split(" ");
//
//        int n = Integer.parseInt(words[0]);
//
//        int[] d = new int[n + 1];
//        st = new boolean[n + 1];
//
//        words = br.readLine().split(" ");
//        for (int i = 1; i <= n; ++i) {
//            d[i] = Integer.parseInt(words[i - 1]);
//        }
//
//        int k = 0;
//        while (!check()) {
//            int i = 1;
//            while (st[i]) i++;
//            st[i] = true;
//            while (!st[d[i]]) {
//                i = d[i];
//                st[i] = true;
//            }
//            k++;
//        }
//
//        System.out.println(n - k);
//    }
//}